package com.agua.enturno.vista.paginas.prestador;

import com.agua.enturno.servicios.PrestadorDeServiciosService;
import com.agua.enturno.vista.BasePage;
import com.agua.enturno.vista.dto.PrestadorDeServiciosDTO;
import com.agua.enturno.vista.dto.ServicioDTO;
import com.agua.enturno.vista.util.RolDeUsuario;
import org.apache.wicket.authroles.authorization.strategies.role.annotations.AuthorizeInstantiation;
import org.apache.wicket.model.PropertyModel;
import org.apache.wicket.request.mapper.parameter.PageParameters;
import org.apache.wicket.spring.injection.annot.SpringBean;
import org.apache.wicket.util.string.StringValue;

import java.util.List;

@AuthorizeInstantiation(RolDeUsuario.CLIENTE)
public class PrestadorPage extends BasePage {

	private static final long serialVersionUID = 1L;

	@SpringBean
    private PrestadorDeServiciosService prestadorService;
	@SuppressWarnings("unused")
	private PrestadorDeServiciosDTO prestador;
	@SuppressWarnings("unused")
	private List<ServicioDTO> servicios;
	
	
	public PrestadorPage() {
    	this(null);
    }
	
	public PrestadorPage(final PageParameters parameters) {
		
		StringValue stringId = parameters.get("prestadorId");
		
		prestador = prestadorService.findById(stringId.toLong(1L));
		servicios = prestadorService.findServicios(stringId.toLong(1L));
		
		add(new PresentacionPrestadorPanel("presentacion-prestador", new PropertyModel<PrestadorDeServiciosDTO>(this, "prestador")));
		add(new ServiciosPanel("servicios", new PropertyModel<List<ServicioDTO>>(this, "servicios")));
    }
	
}
